package com.company.management.service.report;
import com.company.management.dto.*;
import com.company.management.modal.entity.User;
import com.company.management.result.Result;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface TaskService{
    /**
     * 创建任务
     * @param req
     * @return
     */
    public Result createTask(CreateTaskReq req);

    /**
     * 修改任务
     * @param req
     * @return
     */
    public Result updateTask(UpdateTaskReq req);

    /**
     * 查询任务
     * @return
     */
    public Result selectTaskList(User user);

    /**
     * 删除任务
     * @param req
     * @return
     */
    public Result deleteTask(TaskDeleReq req);


    /**
     * 查询任务详情
     * @param req
     * @return
     */
    public Result queryTaskDetail(QueryTaskDetailReq req);

    /**
     * 创建任务步骤
     * @param req
     * @return
     */
    public Result createStep(CreateStepReq req);

    /**
     * 修改任务步骤
     * @param req
     * @return
     */
    public Result updateStep(UpdateStepReq req);


    /**
     * 删除任务步骤
     * @param req
     * @return
     */
    public Result deleteStep(StepDeleReq req);

    /**
     * 删除任务步骤
     * @param req
     * @return
     */
    public Result queryStepDetail(QueryStepDetailReq req);


    /**
     * 附件上传
     * @return
     */
    public Result uploadFile(fileInfoReq req,String uploadDir);

    /**
     * 获取分组列表人员信息
     * @return
     */
    public Result getuserlist();

    /**
     * 获取分组人员信息
     * @return
     */
    public Result assigntask(AssignTaskReq req);

    /**
     * 获取分组人员信息
     * @return
     */
    public Result uploadFile(MultipartFile file,String taskId,Integer userId,String uploadDir);


}
